package com.face.pass.active.utils;

import java.util.HashMap;
import java.util.Map;

/**
 * 自定义加密算法
 * Created by luorenjin on 2018/8/18.
 */

public class CryptUtils {

    private static final Map<Character,Character> map = new HashMap<>();

    static{
        map.put('a','p');
        map.put('b','g');
        map.put('c','d');
        map.put('d','9');
        map.put('e','c');
        map.put('f','f');
        map.put('g','h');
        map.put('h','k');
        map.put('i','5');
        map.put('j','i');
        map.put('k','l');
        map.put('l','o');
        map.put('m','n');
        map.put('n','m');
        map.put('o','b');
        map.put('p','s');
        map.put('q','r');
        map.put('r','q');
        map.put('s','t');
        map.put('t','1');
        map.put('u','v');
        map.put('v','7');
        map.put('w','u');
        map.put('x','3');
        map.put('y','z');
        map.put('z','0');
        map.put('0','x');
        map.put('1','a');
        map.put('2','y');
        map.put('3','4');
        map.put('4','j');
        map.put('5','8');
        map.put('6','w');
        map.put('7','6');
        map.put('8','e');
        map.put('9','2');

    }


    public static String encrypt(String src){
        StringBuilder sb =  new StringBuilder();
        for(int i=0;i< src.length();i++){
            sb.append(map.get(src.charAt(i)));
        }
        return sb.toString();
    }


    public static String decrypt(String src){
        StringBuilder sb =  new StringBuilder();
        for(int i=0;i< src.length();i++){
            Character value = src.charAt(i);
            for(Character c : map.keySet()){
                if(map.get(c).equals(value)){
                    sb.append(c);
                }
            }
        }
        return sb.toString();
    }

}
